﻿using System;
using System.Text;
using System.Collections.Generic;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using Rhino.Mocks;

namespace BankAppTests
	{
	/// <summary>
	/// Summary description for AccountInsert
	/// </summary>
	[TestClass]
	public class AccountInsert
		{
		public AccountInsert()
			{
			//
			// TODO: Add constructor logic here
			//
			}

		private TestContext testContextInstance;

		/// <summary>
		///Gets or sets the test context which provides
		///information about and functionality for the current test run.
		///</summary>
		public TestContext TestContext
			{
			get
				{
				return testContextInstance;
				}
			set
				{
				testContextInstance = value;
				}
			}

		#region Additional test attributes
		//
		// You can use the following additional attributes as you write your tests:
		//
		// Use ClassInitialize to run code before running the first test in the class
		// [ClassInitialize()]
		// public static void MyClassInitialize(TestContext testContext) { }
		//
		// Use ClassCleanup to run code after all tests in a class have run
		// [ClassCleanup()]
		// public static void MyClassCleanup() { }
		//
		// Use TestInitialize to run code before running each test 
		// [TestInitialize()]
		// public void MyTestInitialize() { }
		//
		// Use TestCleanup to run code after each test has run
		// [TestCleanup()]
		// public void MyTestCleanup() { }
		//
		#endregion


		[TestMethod]
		public void AccountBALInsertTest()
			{
			MockRepository mocks = new MockRepository();

			var viewMock = MockRepository.GenerateStub<AccountsDAL>();
			viewMock.Stub(x => x.CreateAccount(Arg<AccountsBO>.Is.Anything)).Return(1);

			//AccountsBO Account = MockRepository.GenerateStrictMock<AccountsBO>();
			AccountsBO Acc = new AccountsBO();

			int c = Acc.InsertAccount();


			//return viewMock.CreateAccount(Account);
			int b = 1;


			Assert.AreEqual<int>(c, b);
			}
		}
	}
